lets_plot.geom_contour¶
-
lets_plot.geom_contour(mapping=None, *, data=None, stat=None, position=None, show_legend=None, sampling=None, tooltips=None, bins=None, binwidth=None, **other_args)¶ Display contours of a 3d surface in 2d.
- Parameters
mapping (FeatureSpec) – Set of aesthetic mappings created by aes() function. Aesthetic mappings describe the way that variables in the data are mapped to plot “aesthetics”.
data (dict or DataFrame) – The data to be displayed in this layer. If None, the default, the data is inherited from the plot data as specified in the call to ggplot.
stat (str, default=’contour’) – The statistical transformation to use on the data for this layer, as a string.
position (str or FeatureSpec) – Position adjustment, either as a string (‘identity’, ‘stack’, ‘dodge’, …), or the result of a call to a position adjustment function.
show_legend (bool, default=True) – False - do not show legend for this layer.
sampling (FeatureSpec) – Result of the call to the sampling_xxx() function. Value None (or ‘none’) will disable sampling for this layer.
tooltips (layer_tooltips) – Result of the call to the layer_tooltips() function. Specifies appearance, style and content.
bins (int) – Number of levels.
binwidth (float) – Distance between levels.
other_args – Other arguments passed on to the layer. These are often aesthetics settings used to set an aesthetic to a fixed value, like color=’red’, fill=’blue’, size=3 or shape=21. They may also be parameters to the paired geom/stat.
- Returns
Geom object specification.
- Return type
LayerSpec
Note
geom_contour() displays contours of a 3d surface in 2d.
- Computed variables:
level : height of a contour.
- geom_contour() understands the following aesthetics mappings:
x : x-axis coordinates of the center of rectangles, forming a tessellation.
y : y-axis coordinates of the center of rectangles, forming a tessellation.
alpha : transparency level of a layer. Understands numbers between 0 and 1.
color (colour) : color of a geometry lines. Can be continuous or discrete. For continuous value this will be a color gradient between two colors.
size : lines width.
linetype : type of the line. Codes and names: 0 = ‘blank’, 1 = ‘solid’, 2 = ‘dashed’, 3 = ‘dotted’, 4 = ‘dotdash’, 5 = ‘longdash’, 6 = ‘twodash’.
Examples
>>> import numpy as np >>> from scipy.stats import multivariate_normal >>> from lets_plot import * >>> LetsPlot.setup_html() >>> np.random.seed(42) >>> n = 25 >>> x = np.linspace(-1, 1, n) >>> y = np.linspace(-1, 1, n) >>> X, Y = np.meshgrid(x, y) >>> mean = np.zeros(2) >>> cov = [[1, .5], >>> [.5, 1]] >>> rv = multivariate_normal(mean, cov) >>> Z = rv.pdf(np.dstack((X, Y))) >>> data = {'x': X.flatten(), 'y': Y.flatten(), 'z': Z.flatten()} >>> ggplot(data, aes(x='x', y='y', z='z')) + geom_contour()
>>> import numpy as np >>> from scipy.stats import multivariate_normal >>> from lets_plot import * >>> LetsPlot.setup_html() >>> n = 100 >>> a, b = -1, 0 >>> x = np.linspace(-3, 3, n) >>> y = np.linspace(-3, 3, n) >>> X, Y = np.meshgrid(x, y) >>> Z = np.exp(-5 * np.abs(Y ** 2 - X ** 3 - a * X - b)) >>> data = {'x': X.flatten(), 'y': Y.flatten(), 'z': Z.flatten()} >>> ggplot(data, aes(x='x', y='y', z='z')) + \ >>> geom_contour(aes(color='..level..'), bins=3, size=1) + \ >>> scale_color_gradient(low='#dadaeb', high='#3f007d')